package zhu.yu.OOP_abstract_class.finalAnd内部类;

/*
对于成员变量来说，如果使用final关键字修饰，那么这个变量也照样不可变
1.由于成员变量具有默认值， 对于final的成员变量，要么使用直接赋值，要么通过构造方法赋值，二者选一
2. 通过构造方法赋值，必须保证类当中所有重载的构造方法，都最终会对final的成员变量进行赋值,否则报错

 */
public class Person {
//    private final String name;  错误写法，因为有默认值
//    private final String name = "小红";  正确
    private final String name;

    public Person() {
        name = "小明";
    }

    public Person(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

//    public void setName(String name) {
//        this.name = name;
//    }
}
